package com.zryc.shop.pms.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zryc.shop.pms.entity.ProductCategory;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zryc.shop.ums.entity.Menu;

import java.util.List;

/**
 * <p>
 * 产品分类 服务类
 * </p>
 *
 * @author zhaozhao
 * @since 2024-01-18
 */
public interface IProductCategoryService extends IService<ProductCategory> {

    /**
     * 分页查询全部商品分类列表
     *
     * @param parentId
     * @param pageNum
     * @param pageSize
     * @return
     */
    Page<ProductCategory> list(Integer parentId, Integer pageNum, Integer pageSize);

    /**
     * 构建商品列表树
     *
     * @param productCategories
     * @return
     */
    Object buildTree(List<ProductCategory> productCategories);

    /**
     * 修改是否显示在导航栏
     *
     * @param ids
     * @param navStatus
     * @return
     */
    Object updateNavStatus(String ids, Integer navStatus);

    /**
     * 修改是否显示
     *
     * @param ids
     * @param showStatus
     * @return
     */
    Object updateShowStatus(String ids, Integer showStatus);

    /**
     * 修改商品类别
     *
     * @param id
     * @param category
     * @return
     */
    Object updateCategory(Long id, ProductCategory category);

    /**
     * 删除商品类别
     *
     * @param id
     * @return
     */
    Object removeCategory(Long id);
}
